<template>
  <nav class="navbar navbar-dark bg-primary justify-content-between mb-4 px-4">
    <router-link to="/home" class="navbar-brand" href="#">者也专栏</router-link>
    <ul v-if="!user.isLogin" class="list-inline mb-0">
      <li class="list-inline-item"><router-link to="/login" class="btn btn-outline-light my-2">登录</router-link></li>
      <li class="list-inline-item"><router-link to="/signup" class="btn btn-outline-light my-2">注册</router-link></li>
    </ul>
    <ul v-else class="list-inline mb-0">
      <dropdown :title="`你好 ${user.nickName}`">
        <dropdown-item><a href="#" class="dropdown-item">新建文章</a></dropdown-item>
        <dropdown-item :disabled="true"><a href="#" class="dropdown-item">编辑登录</a></dropdown-item>
        <dropdown-item><a href="#" class="dropdown-item">退出登录</a></dropdown-item>
      </dropdown>
    </ul>
  </nav>
</template>

<script lang="ts">
import { defineComponent, PropType, computed } from 'vue'
import Dropdown from './Dropdown.vue';
import DropdownItem from './DropdownItem.vue';
import { UserProps } from '@/store';
// export interface UserProps {
//   isLogin: boolean;
//   name?: string;
//   id?: number;
// }

export default defineComponent({
  name: 'GlobalHeader',
  components: {
    Dropdown,
    DropdownItem
  },
  props: {
    user: {
      type: Object as PropType<UserProps> ,
      required: true,
    }
  },
  setup(props) {
    const title = computed(() => {
      return '你好，' + props.user.nickName
    })
    return {
      title
    }
  }
})
</script>

